// 1. 挂载阶段

//    1. constructor：
//       1. 作用：早期，声明state和ref
//       2. 类似：vue中的created
//    2. render
//       1. 作用： 渲染界面
//    3. componentDidMount 💥
//       1. 理解：挂载后
//       2. 场景： 💥 发请求  、 💥最先获取dom元素

// 2. 更新阶段

//    1. render

//    2. componentDidUpdate

//       1. 类似：vue中的updated
//       2. 场景：做缓存

//       触发更新的两种方式：

//       1. setState修改数据
//       2. props传值改变

//    3. 注意：

//       1. 更新阶段的钩子函数，不能调用setState， ❌否则死循环

// 3. 卸载阶段

//    1. componentWillUnMount
//       1. 类似： vue中beforeDestroy
//       2. 场景： 做清除的动作
